package com.ruoyi.business.service;

import com.ruoyi.business.app.bo.AppMerchantOrderBo;
import com.ruoyi.business.app.bo.AppOrderEvaluateBo;
import com.ruoyi.business.app.vo.AppOrderEvaluateVo;
import com.ruoyi.business.bo.HcxOrderEvaluateAddBo;
import com.ruoyi.business.bo.HcxOrderEvaluateEditBo;
import com.ruoyi.business.bo.HcxOrderEvaluateQueryBo;
import com.ruoyi.business.domain.HcxOrderEvaluate;
import com.ruoyi.business.vo.HcxOrderEvaluateVo;
import com.ruoyi.common.core.mybatisplus.core.IServicePlus;
import com.ruoyi.common.core.page.TableDataInfo;

import java.util.Collection;
import java.util.List;

/**
 * 订单评价Service接口
 *
 * @author wsdz
 * @date 2022-08-18
 */
public interface IHcxOrderEvaluateService extends IServicePlus<HcxOrderEvaluate> {
    /**
     * 查询单个
     *
     * @return
     */
    HcxOrderEvaluateVo queryById(Long id);

    /**
     * 查询列表
     */
    TableDataInfo<HcxOrderEvaluateVo> queryPageList(HcxOrderEvaluateQueryBo bo);

    /**
     * 查询列表
     */
    List<HcxOrderEvaluateVo> queryList(HcxOrderEvaluateQueryBo bo);

    /**
     * 根据新增业务对象插入订单评价
     *
     * @param bo 订单评价新增业务对象
     * @return
     */
    Boolean insertByAddBo(HcxOrderEvaluateAddBo bo);

    /**
     * 根据编辑业务对象修改订单评价
     *
     * @param bo 订单评价编辑业务对象
     * @return
     */
    Boolean updateByEditBo(HcxOrderEvaluateEditBo bo);

    /**
     * 校验并删除数据
     *
     * @param ids     主键集合
     * @param isValid 是否校验,true-删除前校验,false-不校验
     * @return
     */
    Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid);

    /**
     * 导入数据
     *
     * @param hcxOrderEvaluateList 排污口水质数据
     * @return String
     */
    String importHcxOrderEvaluate(List<HcxOrderEvaluateVo> hcxOrderEvaluateList);
	

    TableDataInfo<AppOrderEvaluateVo> getOrderEvaluateList(AppMerchantOrderBo bo);


    boolean evaluate(AppOrderEvaluateBo bo);
}
